import Vue from 'vue'

import 'normalize.css/normalize.css' // 重置页面元素的 margin、padding 等值

// 导入 Element 以及 CSS 文件
// import ElementUI from 'element-ui'
// import 'element-ui/lib/theme-chalk/index.css'
// element 中解决多语言问题的插件
// import locale from 'element-ui/lib/locale/lang/en' // lang i18n

import '@/styles/index.scss' // 全局的 css 文件

// console.log(process.env.VUE_APP_NUM)
// console.log(process.env.VUE_APP_BASE_API)

// 项目的根组件
import App from './App'
// 一般 store 文件夹作用：就是用来存放 Vuex(状态) 代码
import store from './store'
// 路由
import router from './router'

import '@/icons' // 导入图标文件
import '@/permission' // 这个文件是用来做权限认证的(权限管理、路由守卫)

import Directives from '@/directive'
Vue.use(Directives)

import i18n from '@/lang'

/**
 * Mock 是模拟、伪造数据使用 Vue3
 */
// if (process.env.NODE_ENV === 'production') {
//   const { mockXHR } = require('../mock')
//   mockXHR()
// }

// set ElementUI lang to EN
// Vue.use(ElementUI, { locale })
// 如果想要中文版 element-ui，按如下方式声明
// Vue.use(ElementUI)

// 全员组件注册
// import PageTools from '@/components/PageTools'
// Vue.component('PageTools', PageTools)
// Vue.use()是给Vue添加插件(具体功能在对象里install方法中书写)
import GlobalObj from '@/components/index'
Vue.use(GlobalObj)

Vue.config.productionTip = false

new Vue({
  // 指将跟组件以及页面组件打包，打包以后放置到 id 为 app 的 div 中进行展示
  el: '#app', // el 这个属性值一般是一个元素，含义：是指将打包的好的资源挂载(放置)到哪一个位置
  router,
  store,
  i18n,
  render: h => h(App)
})
